package com.sxj.corejava.code07_面向对象;

/**
 * @author 石小俊
 * 2024年07月12日 15:45
 */
public class Test04_static关键字 {
    public static void main(String[] args) {
        SomeClass sc = new SomeClass();
        //sc.name = "admin";
        SomeClass.name = "admin";
        System.out.println(sc.name);

        SomeClass sc2 = new SomeClass();
        //sc2.name = "alice";
        SomeClass.name = "alice";
        System.out.println(sc2.name);

        System.out.println("****************************");
        System.out.println(sc.name);
        System.out.println(sc2.name);
        System.out.println(SomeClass.name);

        SomeClass.test();
        //SomeClass.test02();
        sc.test();
        sc.test02();
    }

}

class SomeClass {
    static String name;
    int age;

    public static void test() {
        System.out.println("这是静态方法");
    }

    public void test02() {
        System.out.println("这是实例方法");
    }

    public static void show() {
        test();
        // 静态方法中无法调用实例方法
        //test02();
        System.out.println(name);
        // 静态方法无法访问实例属性
        //System.out.println(age);
        // 即:静态方法只能访问静态方法与静态属性
        // 无法访问实例方法与实例属性
    }

    public void show02() {
        test();
        test02();
        System.out.println(name);
        System.out.println(age);
    }
}
